package dao;

import java.io.Serializable;
import java.util.List;

import modelo.Estadoinvitado;
import modelo.Tipotelefono;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;

import util.HibernateUtil;

public class EstadoInvitadoDao implements Serializable {

	private static final long serialVersionUID = -3218729403416196073L;
	private Session session;
	SessionFactory sessionFactory = HibernateUtil.getSessionFactory();

	public EstadoInvitadoDao() {
		super();
	}

	public List<Estadoinvitado> obtenerEstadosInvitados() {
		session = sessionFactory.openSession();

		Query query = session.createQuery("SELECT e FROM Estadoinvitado e");
		List<Estadoinvitado> e = query.list();

		session.close();

		return e;
	}

	public Estadoinvitado obtenerEstadoInvitadoById(int id) {
		session = sessionFactory.openSession();
		Query query = session
				.createQuery("from Estadoinvitado where IdEstadoInvitado = :id ");
		query.setParameter("id", id);

		List<?> list = query.list();

		Estadoinvitado e = (Estadoinvitado) list.get(0);
		return e;
	}

	public void guardarEstadoInvitado(Estadoinvitado e) {
		session = sessionFactory.openSession();
		session.beginTransaction();
		session.saveOrUpdate(e);
		session.getTransaction().commit();
		session.close();
	}

	public void eliminarEstadoInvitado(Estadoinvitado e) {
		session = sessionFactory.openSession();
		session.beginTransaction();
		session.delete(e);
		session.getTransaction().commit();
		session.close();
	}

}
